DVR with enhanced functionality

ABSTRACT

A personal video on-demand system and method which permits a user to receive available content using a single tuner and perform one of a plurality of operations on the available content. These operations include recording two or more signals, where one or both may be simultaneously viewed, recording one or more signals and playing back one or more signals, playing back two or more signals, watching one or more signals while recording one or more other signals, viewing two or more signals live, or viewing at least one signal live, while viewing one or more signals in a playback mode. These operations also include selecting an even based on actor, actress, director, etc.,.alerting a user to an attempt to record a duplicate program, displaying a status of a program from the available content the user is watching, playing paused programming or converting paused programming to recorded programming during a channel change, allowing a user to record an entire program after viewing the program for a period of time, permitting a user to capture a snippet of the available content, permitting a user to rewind recording in an increment for playback of a portion of the available content, enabling a user to jump back from a live broadcast to a last paused video segment.

CROSS REFERENCE TO RELATED APPLICATIONS

[0001] This application is a continuation-in-part and claims benefitunder 35 U.S.C. §120 of U.S. Non-Provisional application of Doug Dillon,et al entitled “Personal Video On-Demand System and Method”, Ser. No.09/766,252 filed on, Jan. 19, 2001, which is a continuation-in-Part andclaims benefit under 35 U.S.C. §120 of U.S. Non-Provisional applicationof Michael Ficco et al entitled “Personal Video On-Demand System andMethod”, Ser. No. 09/533,843 filed on Mar. 23, 2000, the entire contentsof both are incorporated by reference herein. This application alsoclaims benefit under 35 U.S.C. § 119(e) of U.S. Provisional applicationof Adrian Yap, et al entitled “Digital Video Recorder”, Ser. No.:60/199,438 filed on Apr. 25, 2000, the entire contents of which isincorporated by reference herein.

BACKGROUND OF THE INVENTION

[0002] 1. Field of the Invention

[0003] The present invention generally relates to audio and videodevices. The present invention more specifically relates to the field ofvideo-on-demand equipment and services.

[0004] 2. Background of the Prior Art

[0005] Providing video-on-demand has been a elusive goal sought after bya variety of companies. Many of the efforts to date have been stymied bythe enormous bandwidth consumed when a large number of movies or othercontent are requested by individuals. This problem is exacerbated whenan insufficient number of consumers request a particular movie such thatit is not economically justified to consume the available bandwidth forsuch a small number of requests. In order to be profitable, conventionalvideo-on-demand services offer only the most popular movies. The resultis that the most attractive feature of video-on-demand is destroyed.This most attractive feature is the availability of a wide variety ofmovies or other content on demand of a consumer.

[0006] Various other problems exist in conventional video-on-demandservices including inconvenient and limited ways in which to designatedesired content.

[0007] Another shortcoming of conventional video-on-demand services isthe inability to aggregate a video library in a fast and efficientmanner. Another shortcoming of conventional video-on-demand services isthe negative impact of aggregating a video library on the normal viewinghabits of the consumer.

[0008] Another shortcoming of conventional video-on-demand services is alimitation on the number of signals which may be recorded, viewed,and/or played back at any time. Other problems include the inability tomanipulate the recorded, viewed and/or played back signal(s) in a mannerdesired by the user.

SUMMARY OF THE INVENTION

[0009] An object of the present invention is to remedy the above-noteddeficiencies in conventional video-on-demand services and equipment.Another object is to enable video-on-demand equipment with a capacitylarge enough to accommodate potentially desired content. Yet anotherobject of the invention is to provide an expandable storage device thatcan be easily added to by a consumer thereby increasing the capacity forthe personal video library. Another object of the invention is toprovide simultaneous recording, play back, and viewing of multiplesignals. Yet another object is to provide a set of functions to enablethe user to manipulate the signals input thereto.

[0010] One aspect of achieving the above object is to utilize an arrayof hard disk drives to create a video server farm. Such a video serverfarm provides the enormous capacity necessary for an adequate contentlibrary while also providing an expandable storage space.

[0011] The invention creates a new paradigm for video-on-demand servicesin which a video server farm is utilized in combination with anelectronic program guide and associated receiver, tuner, control unit,and user interface that enables a consumer to create his own, personalvideo-on-demand library.

[0012] More specifically, the present invention includes a content feedthat provides a variety of content or broadcast television programs fromnumerous transmission media to, for example, a set-top box or otherapparatus. The invention includes a receiver/tuner that receives thecontent stream from the content feed and routes the content stream to adisplay unit, a decoder/decrypter or to a storage device in response toa control signal from a control unit. In this way, the content streammay be directly viewed as in a conventional cable box ordecoded/decrypted before being viewed by a display unit. Another routeprovided by the invention is to a storage device so that selectedcontent may be recorded.

[0013] To aid in the selection of desired content, an electronic programguide is utilized. This electronic program guide receives programminginformation for available content that will be broadcast to theinventive apparatus in the future. With a user interface device, theuser can interact with the electronic program guide and select thedesired programs that will be recorded on the storage device. Enhancedfunctionality for the electronic program guide includes the ability totrack previously selected content so that identical or similar programscan be recorded in the future. Other enhancements include inputtingselection criteria such as actor, director, theme, keywords, channelinformation, station call letters, etc. which can be utilized by thecontrol unit to search the electronic program guide for content matchingthe consumer's criteria.

[0014] Preferably, the storage device is expandable and/or removablesuch that the user can easily add and/or remove additional storagecapacity as desired or needed. For example, the storage device mayinclude magnetic tape, magnetic or optical disk (for example, aread/write disk or a write once/read many disk), CD, DVD, of a portabledigital audio/video/data player.

[0015] Further enhancements to the present invention include the abilityto transcode from one medium type to another to ensure efficientstorage, regardless of the target medium. Transcoding may include usingdifferent compression techniques or different sets of compressionparameters for the same compression technique.

[0016] Further enhancements to the present invention include a filemanager for the creation and management of a database, which includes anentry for each program recorded. The file manager further supports otherdatabase manipulation operations, such as adding, deleting, searching,etc. The file manager also enables the user to print a physical labelthat may be attached to storage media. The file manager also permitsannotation of the database entry for each program recorded. Theinformation contained in these annotations may be suppliedelectronically, such as via an electronic program guide or may bemanually generated by a user.

[0017] Further enhancements to the present invention include the use ofinternal and external memory in combination. This enables the presentinvention to record program information to internal memory and then toexternal memory or to stream program information directly to externalmemory. The combination of internal and external also permits recordingfrom removable memory into internal memory and then ultimate playbackfrom the internal memory.

[0018] Further enhancements to the present invention include a multiplereceiver/tuner embodiment in which multiple content streams can bereceived, tuned and provided to the storage device. With a plurality ofreceiver/tuners, this modification has the ability to simultaneouslyrecord a plurality of programs on a storage device. A multiple displayunit such as a picture-in-picture television can be utilized tosimultaneously view the two programs being recorded. Alternatively, oneprogram can be recorded while another is being viewed either from a livebroadcast or from the previously recorded video library in the storageunit.

[0019] Further enhancements to the present invention include severalmodes, including, but not limited to recording two or more signals whereone or both may also be simultaneously viewed, recording one or moresignals and playing back one or more signals, playing back two or moresignals, watching one or more signals, while recording one or more othersignals, viewing two or more live signals (through the use ofpicture-in-picture or other similar function), and viewing at least onesignal live, while viewing one or more signals in playback mode.

[0020] Further enhancements to the present invention include variousfunctions, which enable the user to manipulate the recorded, viewed,and/or played back signals in a manner desired by the user. Thesefunctions include but are not limited to an intelligent agent function,by which the user may select at least one recorded event from a programguide or schedule, based on actors, actresses, directors, or otherrelevant information, a duplicate episode filter function, which alertsa user if a duplicate episode is being recorded, a status indicatorfunction, which displays the status of the program the user is watching,a clear convert function, which offers the user the opportunity to clearpaused (live cached) programming or convert paused programming torecorded programming during a channel change, a record after watchingfeature which allows a user to record an entire program after viewingthe program for a period of time, an active snapshot feature, whichpermits the user to capture snippets of digital audio/video broadcasts,a personal instant replay feature, which permits a user to rewindrecording in fixed increments for playback, and a back to pause feature,which enables the user to jump back from a live broadcast to the lastpaused video segment.

[0021] It is noted that the various functions described above may beutilized in conjunction with one or more of the modes. For example, theintelligent agent duplicate filter, and active snapshot functions may beused with any recording mode, the status indicator and personal instantreplay features may be utilized with any playback mode, and the statusindicator, clear convert, record after watching, and personal instantreplay functions may be utilized in any live viewing mode. The back topause function may be utilized to jump between any two or more live orplayback signals.

[0022] The invention also includes a method of determining potentiallydesired content which includes manually inputting content selection(s)and selection criteria. As mentioned above, the selection criteria mayinclude a variety of criteria such as actor, program name, director,keywords, channel information, station call letters, etc. Such selectioncriteria may be utilized in conjunction with tagged content in which thecontent stream is tagged with additional information associated with thecontent. For example, a typical tag may include which actors star in theprogram, the director, a synopsis, keywords, a thumbnail, a preview, asnippet, etc. The tags may be in-band or otherwise transmitted alongwith the content or associated with the program and sent separately suchas with an electronic program guide. In any of these alternatives, theselection criteria may be utilized to search through these tags forpotentially desired content.

[0023] Furthermore, the methods of the invention track previouslyselected content and previously utilized selection criteria in order tolearn the consumers preferences. This tracked information is then addedto the selection of potentially desired content so that the appropriatecontent may be recorded by the inventive apparatus.

[0024] The method of operating the inventive apparatus may also includedownloading the electronic program guide on a periodic basis. Selectionsand criteria may then be inputted. The electronic program guide is thenscanned for content matching the selections and/or input criteria. If amatch is found, then a broadcast channel is tuned and the content outputto the storage device. Appropriate changes are made to a file manager tokeep track of the recorded content. Thereafter, the consumer can managethe recorded content by, for example, deleting, sorting, cataloging,commenting, etc.

[0025] On the content provider side, the electronic program guide may becompiled and uploaded to the user. Because different regions of thecountry have different available channels, the program listings may bewinnowed to only those available to the particular consumer. Tags canthen be generated that describe or otherwise indicate the programcontent and these tags are associated with the program listings.

[0026] The inventive methods also include simultaneous recording ofmultiple content streams. After scanning the electronic program forcontent matching the consumer's preferences, the invention determineswhether there are scheduling conflicts. Such scheduling conflicts areresolved by multiple, simultaneous recording of plural content streams.

[0027] Further scope of applicability of the present invention willbecome apparent from the detailed description given hereinafter.However, it should be understood that the detailed description andspecific examples, while indicating preferred embodiments of theinvention, are given by way of illustration only, since various changesand modifications within the spirit and scope of the invention willbecome apparent to those skilled in the art from this detaileddescription.

BRIEF DESCRIPTION OF THE DRAWINGS

[0028] The present invention will become more fully understood from thedetailed description given hereinbelow and the accompanying drawingswhich are given by way of illustration only, and thus are not limitativeof the present invention, and wherein:

[0029]FIG. 1 is a block diagram of a personalized video-on-demand systemaccording to a first aspect of the invention;

[0030]FIG. 2 is a block diagram of a personalized video-on-demand systemaccording to a second aspect of the invention;

[0031]FIG. 3 is a high-level flow chart of the inventive method ofdetermining potentially desired content;

[0032]FIG. 4 is a high-level flow chart of a method of creating avideo-on-demand service;

[0033]FIG. 5 is a high-level flow chart of a method of generating anelectronic program guide according to the invention; and

[0034]FIG. 6 is a block diagram of an exemplary architecture inaccordance with the present invention;

[0035]FIG. 7 is a block diagram showing an exemplary construction of amemory device according to an exemplary embodiment of the presentinvention;

[0036]FIG. 8 is a flow diagram showing data flow for recording orcaching programs such as pay-per-view (PPV) events for later playback inaccordance with an exemplary embodiment of the present invention;

[0037]FIG. 9 illustrates an alternative recording path in accordancewith the present invention;

[0038]FIG. 10 is a high-level flow chart of a method of creating apersonalized video-on-demand service capable of simultaneous, multiplerecording of plural content streams.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

[0039] As shown in FIG. 1, the personalized video-on-demand systemincludes a content feed 10. This content feed 10 may include a broadcasttelevision network or internet content provider. The content feed iscompatible with all cable, satellite and terrestrial broadcasttelevision systems as indicated by transmitter 20 that is connected to abroadcast antenna 22, satellite up-link 24, internet connection 26,cable 28, and phone line 30. These various connections and standards areexemplary only and are intended to include any system for feedingcontent to a consumer.

[0040] On the consumer side, an apparatus 100 such as a set-top box,hardware card, specially programmed computer or other device having thefunctionality described herein is provided that may be placed near to orwithin a television or other display device (such as a computer monitor)such as display unit 270. The apparatus 100 inputs content from devicessuch as satellite down-link 34, antenna 32, internet connection 26,cable 28, and/or phone line 30. It is to be understood that theapparatus 100 may include just a single communication path including 26,28, 30, 32, or 34.

[0041] The received content is fed to receiver/tuner 40. Thereceiver/tuner 40 provides an appropriate connection to thecorresponding communication path. The receiver/tuner 40 may also selector tune a channel within the spectrum of content being fed to theapparatus 100. If there is only one channel, then the receiver unit 40need not include a tuner circuit.

[0042] A switch 50 is connected to the receiver/tuner 40 and routes thecontent to display unit 270, decoder/decrypter 60, or storage device200. The switch 50 is controlled by control unit 70 to route the contentto the desired destination. It is noted that all possible permutationsfrom switch 50 can be achieved simultaneously. For example, switch 50may decode, decrypt, output to display unit 270, and/or record to astorage device and is not limited to performing only a single functionat a given time.

[0043] The decoder/decrypter 60 includes decoder circuitry and/ordecryption circuitry. For example, many video broadcasts are encoded andthe decoder 60 decodes this encoded content stream so that it may beviewed by the consumer on display unit 270. Conventional decodingprocesses such as MPEG1 and MPEG2 are examples of such decodingprocesses.

[0044] The component 60 may also include decryption circuitry thatdecrypts an encrypted content from the content feed. Some broadcasts,particularly pay-per-view broadcasts or premium channels such as HBO®and Showtime® are encrypted so that non-subscribers cannot view thecontent. The decrypter 60 decrypts any such encrypted content forviewing on the display unit 270 by the consumer. The decrypter mayinclude a variety of decryption schemes for corresponding premiumchannels or services. As with conventional cable boxes, the decryptioncircuitry may be enabled or disabled depending upon the consumer'ssubscription to the premium channel or associated encrypted content.Authorization for decryption may be governed by appropriate payment forthe associated content. For example, pay-per-view content is typicallyencrypted with decryption authorization governed by an appropriatepayment by the consumer.

[0045] As a further alternative, the decrypted content may be stored forlater purchase and playback. In this alternative, the consumer need notpay in advance or contemporaneous with the live broadcast and can,instead, store the encrypted content for later playback. Such delayedplayback may also include an associated payment if required by thecontent provider by utilizing the user interface 90 and communicationchannel(s) with content feed 10 or by having the consumer contact thecontent provider using other communication channels and paymentmechanisms.

[0046] The component 60 may also implement an encryption scheme separatefrom and/or in addition to the encryption scheme utilized by the contentfeed 10. In other words, encrypted content supplied from content feedmay be further encrypted to further protect unauthorized access to thecontent.

[0047] The electronic program guide (EPG) 80 is connected to an inputport 82 so that updates to the electronic program guide may bedownloaded. In other words, the electronic program guide storesavailable content for the near future. This available content may beupdated on a periodic basis so that the consumer can make appropriateselection for upcoming programs. The electronic program guide 80preferably displays information on the display unit 270. For example,the electronic program guide 80 may display programs in a tabular formatby channel and time so that the user can make selections of desiredcontent. Other examples and functionality of the electronic programguide 80 are described below.

[0048] The user interface 90 may include various control devices such asa keypad connected directly to the apparatus 100 or a remote controldevice. The user interface 90 permits the user to interact with theapparatus 100 and electronic program guide 80 and thereby select contentfor recording and on-demand playback.

[0049] The storage device 200 is connected to the switch 50 as well asthe control unit 70 and the decoder/decrypter 60. The storage device 200may also be directly connected to the display unit 270. The storagedevice 200 may include a plurality of hard disk drives 210, 220, 230 asshown in FIG. 1. Also, the storage device 200 may include only one harddisk drive although the storage capacity would be necessarily limited bythe capacity of the single hard disk drive 210.

[0050] Preferably, the storage device may be expanded by plugging inadditional hard disk drives such as hard disk drive 220 as well as harddisk drive 230. Preferably, adding storage capacity could be easilyaccomplished by the user by simply plugging in a storage device such asa hard disc drive. The collection of hard disk drives 210, 220 . . . 230may also be considered a hard disk drive array. Such an array may useconventional data loss prevention methods such as error correctingcodes, and Redundant Array of Independent Discs (RAID) methodologies.

[0051] The storage device 200 may be further expanded by adding anoptional array of hard disk drives 250 as shown by the dotted lines inFIG. 1. The storage devices 200, 250 may be provided in a separate unitfrom apparatus 100.

[0052] Alternatively, the storage device 200 may include other types ofstorage devices. For example, the storage device may include solid statememory devices such as chips, cards, or sticks. The storage device mayalso include magnetic tape, magnetic or optical disk (for example, aread/write disk or a write once/read many disk), CD, DVD, a portabledigital audio/video/data player, a jukebox, or any other known or notyet invented form of storage.

[0053] The storage device further may be reconfigurable, including, asexamples, expandable, addable, removable, and/or replaceable. Thestorage device may be manually reconfigurable or automaticallyreconfigurable. For example, a user may replace all or part of thestorage device. Alternatively, the storage device may be configured as a“juke-box” including a plurality of memory devices 210, 220, 230 (eitherof the same or different types), which are automatically loaded forrecording or playback, possibly based on a user initiated request. Thememory devices 210, 200, 230 may be integrated with the storage device200 and/or the apparatus 100 or accessible via a network (either localor wide-area) utilizing a transfer protocol (for example, the 1394protocol) or a combination of integrated and removable memory.Preferably, the memory devices 210, 220, 230 may be plugged in orotherwise expanded with a modular design. This modular design isindicated in FIG. 1 by the plurality of storage devices 210, 220, 230 aswell as the additional array of storage devices 250. Such a modulardesign permits a user to easily increase the storage capacity andthereby the size of the video-on-demand library.

[0054] The control unit is connected to the storage devices 200, 250,the decoder/decrypter 60, the switch 50, the receiving device 40, theelectronic program guide 80, as well as the user interface 90.

[0055] In general, the control unit 70 coordinates all of the operationsperformed by the apparatus 100 by sending appropriate control signals toeach of the various components. For example, when the electronic programguide indicates that the desired content will appear on channel 7 at8:00 pm, the control unit 70 sends a control signal to receiver/tuner 40to tune channel 7 at 8:00 pm, then control unit 70 sends a controlsignal to control switch 50 to switch the tuned content and output thetuned content to the storage device 200. The control unit 70 alsocontrols the recording of this content on the storage device 200. Forexample, the control unit 70 may synchronize the sending/receiving ofdata between the storage device 200 and the control unit 70, in order toavoid periods of inaccessibility. For example, if one of the memorydevices 210, 220, 230 is being removed or otherwise not available, thecontrol unit 70 controls via synchronization, recording and/or playback,such that during the period of inaccessibility, the memory device 210,220, 230 is not accessed. The control unit 70 may accomplishsynchronization by sending a sync pulse to a storage device 200 and/ormemory devices 210, 220, 230, in order to coordinate the availability ofthe memory devices 210, 220, and 230, with the operation desired by thecontrol unit 70. Any necessary decoding or decryption is controlled bycontrol unit 70 which sends commands to the decoder/decrypter the outputof which is sent to display unit 270. The control unit 70 may also beutilized to control the rate at which information is recorded or playedback. For example, the control unit 70 may record on a first medium, forexample an internal medium, in real time, and then stream theinformation to a removable medium, either faster or slower than realtime, depending on the capabilities of the removable medium. Similarly,the control unit 70 may permit the playback of information from eitheran internal or external memory, either faster or slower than real time,and subsequently output the data for playback in real time. The controlunit 70 may utilize one or more medium to vary the rate at which contentis either played back or recorded by utilizing at least one medium as abuffer.

[0056] The control unit 70 also coordinates the operations between theuser interface 90 and the electronic program guide 80. For example, theon-demand playback of previously recorded content may be controlled withthe user interface 90 by having the consumer input a command. Thiscommand is input by the control unit 70. For example, a playpreviously-recorded content command may be input by user interface 90.This command is sent to control unit 70 which activates the storagedevice 200 to read the corresponding content from the storage device200. Any necessary decoding is then performed by decoder 60 under thecontrol of control unit 70 the results of which are output to displayunit 270.

[0057] Although the system operates generally as described above,further details of the operation including both the provider andconsumer side of the system are described below in relation to the flowcharts of FIGS. 3-5. The block diagram of FIG. 6 further describes theoperation of the system shown in FIG. 2.

[0058]FIG. 3 illustrates a particular example of how the FIG. 1 personalvideo-on-demand system operates. Specifically, FIG. 3 provides detailson how the electronic program guide 80 interacts with the system.

[0059] As shown in FIG. 3, the consumer can manually input contentselections in step 300. This may be done with the user interface 90. Toaid in this process, the electronic program guide 80 may send a displayto display unit 270 that aids in the manual input of content selections.In this way, the consumer can designate or otherwise select certainprograms or other content to be recorded in the video-on-demand library.Step 300 may also delete previously selected content. In this way, thelist of content selections may be tailored to the user's preferences.

[0060] Enhancing the electronic program guide 80 are tags. A tagincludes data that is associated with or otherwise describes content.For example, a tag may indicate which actors are in a particular movie,the director of the movie, a synopsis of the movie, when it wasreleased, critical reviews of the movie, related programs, sequels,keywords, a thumbnail, a preview, a snippet, or other informationconcerning or relating to the content. The tags may be in-band orotherwise transmitted along with the content. Alternatively, the tagsmay be associated with the program or otherwise sent separately such aswith an electronic program guide.

[0061] Step 310 scans the electronic program guide 80 for content thathas been tagged. In other words, step 310 searches or scans through theelectronic program guide 80 for any content that has an associated tag.Step 320 allows the user to manually input selection criteria. Theseselection criteria are preferably based on the scope of the tags. Inother words, if the tags are limited to actors and actresses, then theselection criteria may be similarly limited since other criteria wouldnot effect the content selection. In this way, the user can manuallyinput one or more selection criteria in order to search for desiredcontent. This search may return a list or group of programs all of whichmay be recorded or which may be provided to the user for selection whereonly the selected content is recorded. This selection may be done byrepeating step 300.

[0062] To further enhance the electronic program guide, step 330 tracksselected content and/or selection criteria. In other words, previouslyselected content may be tracked or otherwise stored by the control unitby the storage device 200. Also, previously input selection criteria mayalso be tracked or otherwise stored by the control unit 70 in thestorage device 200. By tracking selected content and/or selectioncriteria, the electronic program guide 80 may learn the user'spreferences and thereby speed the content selection process.

[0063] However, the consumer may not desire this tracking to beutilized. Thus, step 340 decides whether the consumer wants to add thetracked information to the selection. This may be done, for example, byprompting the user and inputting a command via the user interface 90. Asanother option, a default option may be utilized to make the decision ofstep 340.

[0064] If the tracked information is to be added to the selections, thenstep 350 is performed which updates the selections with the trackedinformation. In this way, a variety of content selections appropriate toand personalized to the consumer can be generated. The selection may befurther managed by rearranging, deleting or by adding further selectionby repeating the process shown in FIG. 3. The selection(s) may bepresented to the user for modification(s). Alternatively, the system maysimply retrieve the selections without user modification(s) to theselection(s).

[0065]FIG. 4 illustrates further details of how the personalizedvideo-on-demand system of FIG. 1 operates. This process begins in step400 by downloading the electronic program guide 80. This may be done byutilizing port 82. For example, port 82 may be connected to a telephoneline, cable connection, satellite up-link, or radio broadcast antenna.Using any or all of these methods, the information in the electronicprogram guide 80 may be down-loaded by step 400.

[0066] Step 410 then inputs criteria and/or selection(s). This processis described above in relation to FIG. 3 as indicated by connector A. Inother words, the FIG. 3 process ends with connector point A whichconnects this process to the process of FIG. 4.

[0067] With the criteria and/or content selection in hand, step 420 canthen scan the electronic program guide 80 for matches. In other words,the available content within the electronic program guide 80 is scannedfor content matching the user's selections and/or criteria.

[0068] Step 430 then determines whether there is a match between theconsumer selections and/or criteria and the electronic program guide 80.If there is no match, then the process may continue by proceeding tostep 440 which decides whether to update the electronic program guide80. Preferably, the electronic program guide 80 is updated on a periodicbasis. For example, it may be most convenient to update the electronicprogram guide during off-peak hours. By tracking the user's viewinghabits, the system can determine when these off-peak hours occur so thatthe downloading of the electronic program guide can occur when theconsumer is not watching TV. If the electronic program guide 80 is to beupdated, then the process proceeds to step 400 which downloads theelectronic program guide 80. If not, then the process returns to theinput step 410 which inputs the consumer's selections and/or criteria.

[0069] If there is a match between the consumer's selections and/orcriteria, then the flow proceeds to step 450 which tunes the channeland/or otherwise outputs the matching content to the storage device. Forexample, the control unit 70 controls the receiver/tuner 40 to tune thechannel of the available content spectrum to the appropriate channel.Then, the switch 50 is controlled by control unit 70 to switch the tunedchannel to be fed to the storage device 200. The storage device 200 maythen record the routed content.

[0070] Once the content has been recorded by storage device 200, step460 then updates a file manager that may be part of the storage device250, the control unit 70, other elements of the apparatus 100, or aseparate entity. Essentially, the recorded content is stored as a fileor files within the storage device 200. These file(s) have an associatedaddress or header information that is managed by the file manager. Step460 updates the file manager with information related to the recordedcontent.

[0071] By using the file manager, the user can then manage the recordedcontent with step 470. Specifically, the managing of the recordedcontent includes sorting, cataloging, adding comments, deleting,reorganizing, etc. Such management may also include on-demand playback.Such playback includes various commands including play, rewind, fastforward, pause, slow, skip, etc. in a manner similar to a video cassetterecorder. It is noted that a VCR is given only by way of example, andany other device capable of the functions described above or similarfunctions, is also within the scope of the present invention.

[0072] The file manager may manage the recorded content by maintaining adata base, containing an entry for each recorded item. The entry maydescribe the content recorded and identify the memory device (eitherremovable or not) which contains the recorded content. The entry mayinclude all or part of the information received from the electronicprogram guide. The information received from the electronic programguide may be automatically entered. The entry may also be supplementedby notes or images from the user. The entry may contain alphanumericcharacters, images, or both. The file manager may also forward the entryinformation to the printer 300, either directly from the storage device200 or via the apparatus 100 (for example, the control unit 70) so thatthe entry information is printed on a label that can be affixed to thememory device. The file manager may also prompt the user, via userinterface 90, to place a self-stick adhesive label in the printer 300.

[0073] The user may interface with the file manager via a graphical userinterface (GUI), as is known in the art. The GUI allows the user to seewhat content is available. The GUI also indicates to the user where thecontent is stored, so the user can manually load the proper medium. Asdiscussed above, alternatively the storage device 200 couldautomatically load the proper media by using a jukebox arrangement, forexample.

[0074] As is apparent from the above, the database may be populated withinformation stored in the memory internal to the apparatus 100 or thestorage device 200, as well as pre-recorded, removable media, forexample, conventional DVDs. It is also possible that user-recordedcontent, which is stored in the memory internal to the apparatus 100 orthe storage device 200, could be saved on removable media. In theinstance, it may be advantageous to compress or modify compressionparameters to improve the storage efficiency on the removable media.Generally, the apparatus 100 permits the copying or moving of contentfrom internal, non-removable memory to external, removable memory, andvice versa.

[0075] The apparatus 100 also supports transcoding from one medium typeto another to ensure efficient storage on the target medium. One suchexample is an initial, user-initiated request to record. The content maybe recorded in internal, non-removable memory using one compressiontechnique or set of compression parameters and recorded to an external,removable memory using a different compression technique or set ofcompression parameters, to thereby improve the storage efficiency ofeach memory type. In the context of the present specification, the termtranscoding or coding is used to identify any type of compression,encryption, reformatting or other manipulation of the information tocustomize the information for the particular medium on which it is to bestored. After managing the recorded content in step 470, the flow thenproceeds to step 440 which decides whether to update the electronicprogram guide 80 as described in detail above.

[0076] As shown in FIG. 5, the inventive methods also include buildingthe electronic program guide. This process may start with step 500 whichcompiles the program listings. Such program listings include a channelline-up, names of programs, station information, descriptions ofprograms, and other information.

[0077] Next, step 510 determines which channels are available to theparticular consumer. As there are a variety of broadcast systemsthroughout the world, the channel line-up is different for differentconsumers. Furthermore, consumers have a choice of broadcast system(s)from which to choose which affects the channels available to theconsumer. Step 510 selects from the full spectrum of program listingsthose channels that are available to the consumer.

[0078] Step 520 then winnows the program listings based on the availablechannels. In other words, the data from step 510 is utilized to winnowthe program listings to those that are available to the particularconsumer.

[0079] Step 530 then builds tags that are associated with the programlistings. The tags are described above and will not be repeated here.Step 530 gathers information to build the tags and associates the tagswith the program listings.

[0080] Then, the system waits for an upload signal. If it has not beenreceived, then the process leaps back to step 500. For example, moreinformation may be available to build or supplement the tags. Also, morechannels or less channels may be available to the consumer. All of theseconsiderations are accounted for by looping through steps 500 through540 until the upload signal has been received.

[0081] When the upload signal has been received, then the uploadingprocess begins. Step 550 uploads the winnowed program listings andassociated tags to the electronic program guide.

[0082] Although FIG. 5 is primarily directed to processes performed bythe content feed 10, much of this process could alternatively performedon the consumer side by the apparatus 100. More specifically, thedetermination of the channels available to the consumer (step 510) andthe winnowing of program listings based on available channels (step 520)may be performed on the consumer side by apparatus 100, in one example,by the control unit 70 working in conjunction with the electronicprogram guide 80 and the storage device 200. In this alternative, thecontent feed 10 would supply all program listings to the apparatus 100for determination by the apparatus 100 of the available channels andwinnowing of the program listings based on available channels.

[0083] As a further alternative, the tag building step 530 may also beperformed by the apparatus 100. For example, the control unit 70 mayutilize the various communication channels 26, 28, 30, 32 and/or 34 togather information appropriate for the tags. These tags may then beassociated with the corresponding program and stored in the electronicprogram guide.

[0084] The upload signal may be sent by the control unit to the contentfeed at a specific time, random time, or on command of the user via userinterface 90. As mentioned above, it would be most convenient to updatethe electronic program guide during off-peak hours. By tracking theuser's viewing habits, the system can determine when these off-peakhours occur so that the downloading of the electronic program guide canoccur when the consumer is not watching TV.

[0085]FIG. 2 illustrates an alternative embodiment of the personalizedvideo-on-demand system. This alternative of FIG. 2 is specificallydesigned for reception/tuning of plural programs, simultaneous recordingof two or more programs, as well as simultaneously recording one programwhile viewing or playing back another program.

[0086] Many elements from the first embodiment of FIG. 1 are alsoutilized in FIG. 2. Common or like reference numerals indicate similardevices and functionality. The FIG. 2 embodiment supports all featuresdescribed above in conjunction with the FIG. 1 embodiment. Additionalfeatures are emphasized below.

[0087] The transmitter 21 of content feed 10 is capable of transmittinga plurality of content streams. As further shown in FIG. 2, there are atleast two connections each provided to the internet 26, cable 28 andtelephone lines 30. Furthermore, the transmitter 22 is capable ofbroadcasting two or more content streams. Likewise, the satelliteup-link 24 is also capable of transmitting two or more content streams.

[0088] On the receiving end, the apparatus 110 includes inputs from afirst satellite down-link 34 as well as a second satellite down-link 35.These satellite down-links may be integrated into a single satellitedown-link having two feeds. In addition, two antennas 32, 33 areutilized. Alternatively, a single connection (satellite down-link,cable, telephone, or internet or antenna) having a split feed could alsobe utilized instead of the two connections described above. In otherwords, the connections may be configured to transmit/receive more thanone content stream.

[0089] As further shown in FIG. 2, the apparatus 110 includes tworeceivers, specifically receiver/tuner 40 and receiver/tuner 41 whichare connected the various communication devices as shown.

[0090] The output from receiver/tuners 40, 41 are provided to busarbitrator 55. Bus arbitrator 55 outputs to bus arbitrator 120 as wellas decoder/decrypter 65, storage device 205 and storage device 255. Inthis way, either or both of the inputs from receivers 40, 41 can berouted to bus arbitrator 120, decoder/decrypter 65, and/or storagedevices 205, 255.

[0091] The decoder/decrypter 65 receives inputs from bus arbitrator 55as well as storage devices 205, 255. The outputs of thedecoder/decrypter are provided to the bus arbitrator 120.

[0092] Bus arbitrator 120 receives inputs from bus arbitrator 55 anddecoder/decrypter 65. The output of bus arbitrator 120 is provided tofirst display unit 271 and second display unit 272.

[0093] The decoder/decrypter 65 is similar to the decoder/decrypter 60of the FIG. 1 embodiment, with the main difference being thatdecoder/decrypter 65 is capable of handling a plurality of contentstreams. In other words, the decoder/decrypter 65 may simultaneouslydecode and/or decrypt more than one content stream.

[0094] The electronic program guide 85 is connected to the control unit75, the user interface 95 and an input port 82. The electronic programguide (EPG) 85 is similar to the electronic program guide (EPG) 80 ofthe first embodiment except that the EPG 85 may handle a plurality ofcontent streams. For example, the EPG 85 may be a combination of twoEPGs 80.

[0095] Similarly, the user interface 95 permits the user to entercommands for both of the content streams rather than the single contentstream handled by the first embodiment of FIG. 1.

[0096] The control unit 75 has control outputs to the receiver/tuners40, 41; the bus arbitrator 55; the decoder/decrypter 65; the EPG 85; theuser interface 95; the bus arbitrator 120; and the storage devices 205,255.

[0097] The storage device 205 is similar to storage device 200 of thefirst embodiment, but is preferably equipped with a plurality ofread/write units. In other words, a storage device 205 is preferablycapable of simultaneously recording and/or playing back at least twoprograms.

[0098] An optional, second storage device 255 may also be provided asfurther shown in FIG. 2. This optional second storage device isconnected to the first storage device 205 as well as to bus arbitrator55 and decoder/decrypter 65.

[0099] The storage devices 205, 255 are preferably modular units thatcan be expanded by adding additional units therein. For example, if harddisk drives are used for the storage devices 205, 255 then the storagecapacity can be expanded by adding additional hard disk drive units.Also, the same variety of storage media may be utilized for the storagedevices 205, 255 as described in relation to the storage device 200, 250of the first embodiment.

[0100]FIG. 6 illustrates an exemplary architecture 700 of the apparatus100 in accordance with another exemplary embodiment of the presentinvention. The architecture 700 utilizes a bus 305 to interconnectvarious components and to provide a pathway for data and controlsignals. FIG. 6 illustrates a host processor 310, a memory device 315(in an exemplary configuration embodied as an SDRAM 315) and a hard discdrive (HDD) 320 connected to the bus 305. The host processor 310 mayalso have a direct connection to SDRAM 315 as shown in FIG. 6.

[0101] As further shown in FIG. 6, a transport processor 330 and PCI I/F340 (peripheral component interconnect interface) are connected to thebus 305. The transport processor 330 also has a connection to input port325 and SDRAM 335. Furthermore, the PCI I/F 340 is connected to adecoder 350. The decoder 350 is connected to a TV encoder 360. Theoutput of TV encoder 360 is in turn sent to a display device 370.Decoder 350 may include both an MPEG A/V decoder 352 and an AC-3/MPEGaudio decoder 356, the output of the latter being sent to display device370 after conversion in a digital-to-analog converter (DAC) 372.

[0102] The host processor 310 may be constructed with conventionalmicroprocessors such as the currently available Pentium™ processors fromIntel. Host processor 3 10 performs non real-time functions in thearchitecture 700, such as graphics-user interface and browser functions.

[0103] HDD 320 is actually a specific example of a mass storage device.In other words, the HDD 320 may be replaced with other mass storagedevices as is generally known in the art, such as known magnetic and/oroptical storage devices, (i.e., embodied as RAM, a recordable CD, aflash card, memory stick, etc.). In an exemplary configuration, HDD 320may have a capacity of at least about 25 Gbytes, where preferably aboutat least 20 Gbytes is available for various recording applications, andthe remainder flexibly allocated for pause applications in architecture700.

[0104] The bus 305 may be implemented with conventional busarchitectures such as a peripheral component interconnect (PCI) bus thatis standard in many computer architectures. Alternative busarchitectures could, of course, be utilized to implement bus 305.

[0105] The transport processor 330 performs real-time functions andoperations such as control of the A/V data flow, conditional access,program guide control, etc., and may be constructed with an ASIC(application specific integrated circuit) that contains, for example, ageneral purpose R3000A MIPS RISC core, with sufficient on-chipinstruction cache and data cache memory. Furthermore, the transportprocessor 330 may integrate system peripherals such as interrupt, timer,and memory controllers on-chip, including ROM, SDRAM, DMA controllers; apacket processor, crypto-logic, PCI compliant PC port, and parallelinputs and outputs. The implementation shown in FIG. 6 actually showsthe SDRAM 335 as being separate from the transport processor 330, itbeing understood that the SDRAM 335 may be dispensed with altogether orconsolidated with SDRAM 315. In other words, the SDRAMs 315 and 335 neednot be separate devices and can be consolidated into a single SDRAM orother memory device.

[0106] The input port 325 receives audiovisual bitstreams from at leasttwo tuners 40 that may include, for example, MPEG-1 and MPEG-2 videobitstreams, MPEG-1 layer II audio bitstreams and Dolby digital (AC-3)audio bitstreams. Exemplary A/V bitrates may range from about 60 Kbps to15 Mbps for MPEG video, from about 56-384 Kbps for MPEG audio, andbetween about 32-448 Kbps for AC-3 audio. The single-stream maximumbitrate for architecture 700 may correspond to the maximum bitrate ofthe input programming, for example 16 Mbps or 2 MBps, which correspondsto the maximum MPEG-2 video bitrate of 15 Mbps, maximum MPEG-1 Layer-2audio bitrate of 384 kbps, and maximum AC-3 bitrate of 448 kbps.

[0107] Of course, various other audiovisual bitstream formats andencodation techniques may be utilized in recording. For example,architecture 700 may record an AC-3 bitstream, if AC-3 broadcast ispresent, along with MPEG- 1 digital audio. Still further, the receivedaudiovisual data may be encrypted and encoded or not encrypted andencoded. If the audiovisual data input via the input port 325 to thetransport processor 330 is encrypted, then the transport processor 330may perform decryption. Moreover, the decryption may be performedinstead by the host processor 310.

[0108] Alternatively, the host processor 310 and transport processor 330may be integrated or otherwise replaced with a single processor. Asmentioned above, the SDRAMs (315 and 335) may be consolidated orreplaced with a single SDRAM or single memory device.

[0109] The PCI I/F 340 may be constructed with an ASIC that controlsdata reads from memory. Audiovisual (A/V) data may be sent to the hostprocessor 310's memory while simultaneously being sent to an MPEG A/Vdecoder 352, as further discussed below.

[0110] As previously noted, decoder 350 may be constructed as shown inFIG. 6 by including the MPEG A/V decoder 352 connected to the PCI I/F340, as well as an AC-3/MPEG audio decoder 356 which is also connectedto the PCI I/F 340. In this way, the video and audio bitstreams from thePCI I/F 340 can be separately decoded by decoders 352 and 356,respectively. Alternatively, a consolidated decoder may be utilized thatdecodes both video and audio bitstreams together. As mentioned above,the encodation techniques are not limited to MPEG and AC-3 and caninclude any known or future developed encodation technique. In acorresponding manner, the decoder 350 could be constructed to processthe selected encodation technique(s) utilized by the particularimplementation desired.

[0111] In order to more efficiently decode the MPEG bitstream, the MPEGA/V decoder 352 may also include a memory device such as SDRAM 354connected thereto. This SDRAM 354 may be eliminated, consolidated withdecoder 352 or consolidated with the other SDRAMs 315 and/or 335.

[0112] TV encoder 360 is preferably an NTSC encoder that encodes, orconverts the digital video output from decoder 350 into a coded analogsignal for display. Regarding the specifications of the NTSC (NationalTelevision Standards Committee) encoder 360, the NTSC is responsible forsetting television and video standards in the United States. The NTSCstandard for television defines a composite video signal with a refreshrate of 60 half-frames (interlaced) per second. Each frame contains 525lines and can contain 16 million different colors.

[0113] In Europe and the rest of the world, the dominant televisionstandards are PAL (Phase Alternating Line) and SECAM (Sequential Colorwith Memory). Whereas NTSC delivers 525 lines of resolution at 60half-frames per second, PAL delivers 625 lines at 50 half-frames persecond. Many video adapters or encoders that enable computer monitors tobe used as television screens support both NTSC and PAL signals. SECAMuses the same bandwidth as PAL but transmits the color informationsequentially. SECAM runs on 625 lines/frame.

[0114] Thus, although use of NTSC encoder 360 is envisioned to encodethe processed video for display on display device 370, the presentinvention is not limited to this standard encoder. PAL and SECAMencoders may also be utilized. Further, hi-definition television (HDTV)encoders may also be viable to encode the processed video for display ona HDTV, for example.

[0115] Display device 370 may be an analog or digital output devicecapable of handling a digital, decoded output from the TV encoder 360.If analog output device(s) are desired, to listen to the output of theAC-3/MPEG audio decoder 356, a digital-to-analog converter (DAC) 372 isconnected to the decoder 350. The output from DAC 372 is an analog soundoutput to display device 370, which may be a conventional television,computer monitor screen, portable display device or other displaydevices which are known and used in the art. If the AC-3/MPEG digitalaudio data are to be decoded by an external audio component, a digitalaudio output interface (not shown) may be included between the AC-3/MPEGaudio decoder 356 and display device 370. The interface may be astandard interface known in the art such as a SPDIF audio outputinterface.

[0116]FIG. 7 illustrates various components that may be provided for theSDRAM 315. As mentioned above, the SDRAM shown in FIG. 6 is actually aspecific implementation of a memory device. It is noted that theinvention is not limited to this specific implementation of SDRAM 315and can include any other known or future developed memory technology.Regardless of the technology selected, the memory device 315 may includea buffer space 316 which may be a fixed or virtual set of memorylocations that buffers or otherwise temporarily stores audiovisual data.In practice, the video data may be stored separate from the audio data,but it would be possible to intermix these data types depending upon theparticular application and coding techniques utilized for the audio andvisual data.

[0117] The audio visual data stored in the buffer space 316 includes oneor more start addresses 317 which indicate the beginning memory addressat which the audio and/or video data (A/V) is stored. If the A/V data isseparately stored, then a plurality of stored addresses will benecessary. Furthermore, if there are more than one set of, or a block ofdata within the buffer space 316, then the start addresses 317 willindividually point to each block of data.

[0118] The memory device 315 also includes a status word space 318. Thisstatus word space includes fixed or virtual addresses at which statuswords may be stored. An example of a status word that may be stored inthe status word space 318 is a status word summarizing the status of aperipheral device. For example, the status word that may be storedwithin the status word space 318 may include the status of the hostprocessor 310 or transport processor 330. The status word space 318 mayalso include pointers 319 that point to the start addresses 317 withinthe buffer space 316.

[0119] As further shown in FIG. 7, the SDRAM 315 may connect to the bus305 via an interface 314. The dash lines indicate that the interface 314is optional and may or may not be included depending upon the interfacerequirements of the particular memory device 315 and/or bus 305.

[0120] Exemplary recording and playback paths are described inaccordance with FIGS. 8 and 9. FIG. 8 shows the recording and playbackdata flows among the various components of the architecture 700. Some ofthe connections between components, and associated reference numeralsfrom FIG. 6 may have been eliminated in FIG. 8 in order to highlight thedata flow which is shown using dashed lines (see Key) in FIG. 8.

[0121] As shown in FIG. 8, A/V data of a selected or desired event,program and/or broadcast from at least two tuners 40 is received byinput port 325 (typically the data is received in packetized form) andfed to the transport processor 330. The transport processor 330 thentransfers the received A/V data to SDRAM 315. Digital recording isaccomplished by the host processor 310, which transfers the A/V databuffered by SDRAM 315 to the HDD 320. In other words, the SDRAM 315serves as a buffer which buffers data sent by transport processor 330.This allows the host processor 310 to control the recording onto the HDD320 when host processor 310 time is available. When a sufficient amountof programming data has been accumulated in the SDRAM 315, the hostprocessor 310 transfers the data from the SDRAM 315 to the HDD 320 forrecording therein.

[0122]FIG. 9 illustrates an alternative signal path for recording.Audiovisual data is fed from the input port 325 to the transportprocessor 330. The transport processor 330 then transfers the receivedaudiovisual data to the PCI I/F 340, as indicated by the dashed dataflow line. The PCI I/F 340 receives audiovisual data from the transportprocessor 330 via bus 305, and sends this data to host processor 310,more particularly to SDRAM 315.

[0123] Digital recording is accomplished similarly, with SDRAM 315serving as a buffer that buffers data sent by the PCI I/F 340. Thisallows the host processor 310 to control the recording onto the HDD 320when processor time is available. When a sufficient amount of A/V datahas been accumulated in the SDRAM 315, the host processor 310 transfersthe data from the SDRAM 315 to the HDD 320 for recording therein. Torecord data, the host processor 310 may also inform the PCI I/F 340 ofavailable start addresses in the SDRAM buffer space 315 to which datamay be buffered for eventual recording in HDD 320.

[0124] The operation of playing back the recorded A/V data thatrepresents a stored event, program, broadcast, etc. in architecture 700is now described. Referring again to FIGS. 8 and 9, when the viewerturns the apparatus 100 on, the viewer is given the option to playbackany of the previously recorded programs, events, broadcast, etc. .Preferably, this may be done by using remote control (not shown) toaccess a menu on display device 370. If the viewer selects a desiredevent, the corresponding A/V data (which typically may also includesystem time and conditional access packets) are retrieved from HDD 320.

[0125] In particular, when the user selects the playback option, theselected A/V data recorded on HDD 320 is sent via bus 305 to a queue inSDRAM 315. Next, the buffered data is sent from SDRAM 315 via bus 305 toPCI I/F 340, which in turn sends the selected A/V data to decoder 350.More specifically, the video portion of the bitstream is sent to MPEGA/V decoder 352, with the audio portion being sent to AC-3/MPEG audiodecoder 356. Alternatively, MPEG video and audio can be conveyed to MPEGA/V decoder 352.

[0126] Within decoder 350, MPEG A/V decoder 352 may be provided with anSDRAM 354 in order to more efficiently decode the MPEG bitstreamreceived from PCI I/F 340. SDRAM 354 is similar to SDRAM 315 discussedabove in its construction. SDRAM 354 temporarily holds the encoded videobitstream data, and also provides the three frame buffers required forMPEG decoding, as is known in the art. Thereafter, the decoded A/V datais output to TV encoder 360 for conversion to an analog format, so thatit may be displayed on display device 370. From this point on, theplayback data looks, for all intents and purposes, identical to theoriginally recorded event, program, broadcast, etc.

[0127]FIG. 2 illustrates another exemplary embodiment. The embodiment ofFIG. 2 generally operates as follows. For further details on anexemplary method of operation, further reference is made to FIG. 10which is explained below in detail.

[0128] As mentioned above, a plurality of content streams may be fed toapparatus 110 of the second embodiment. For example, two simultaneouscontent streams can be provided to the receiver/tuners 40, 41. The busarbitrator 55 can switch either or both of these content streams andprovide the output to various devices.

[0129] If recording is desired, then the control unit 75 directs the busarbitrator 55 to switch the content from receiver/tuners 40, 41 to thestorage device 205. In this way, two programs from two separate contentstreams can be simultaneously recorded by the storage device 205.Alternatively, one of the programs can be fed to storage device 205while the other is fed to storage device 255.

[0130] Some of the features performed by the various exemplaryembodiments of the present invention are described below.

[0131] As described above in conjunction with FIG. 3, a user may selecta single or multiple recorded events from a program guide or scheduler,such EPG 85, for viewing based on actors, actresses, directors, programtitle, key words, key phrases, synopsis, release date, critical review,related programs, sequels, a thumbnail, a preview, a snippet, or otherinformation concerning or relating to the content. In one embodiment,the user activates this “intelligent agent” feature via an input devicesuch as a remote control. For example, the user may display the EPG 85on the screen of a display unit, such as first display 271 or seconddisplay unit 272 and activate one or more menu screens for entering keyword information such as the tag information described above or phrasesthat the user has pre-assigned to programs.

[0132] Alternatively, the user may initiate a browse function to searcha listing of programs stored on HDD 320, which may be organizedalphabetically, by category of program (i.e., drama, comedy, actionadventure, etc.) and/or by organizational structure created by the user.For example, a user may assign “record channel” numbers to variousrecorded programs, whereby the user may click up or down a channellisting menu screen to select a desired channel. Once selected, thescreen may display a listing of recorded programming assigned to thatchannel, grouped by key word such as title, for example.

[0133] Another feature of the control unit 75 is the implementation of aduplicate episode filter. This feature of control unit 75 tracks thelist of recorded programs for duplicates when a record operation isinitiated. When a user selects a record operation, the control unit 75references the storage devices 205, 255, to check certaincharacteristics of the selected program to be recorded with theinformation stored in memory devices 210, 215, 220, 225 . . . 230, 235.If a match is determined, a notification may visually be displayed forthe user.

[0134] In order to identify a match, characteristics such as the taginformation described above, or unique call numbers may be compared. Inone exemplary embodiment, the first display unit 271 or second displayunit 272 may display the characteristics of the selected program torecord with the best match in memory in a side-side fashion, for ease ofcomparison by the user. Alternatively, the user may be prompted with thenotification and the option to view the possible match so as to confirmthat the user is about to record a duplicate of a recorded program.

[0135] Additionally, the user may be provided with a halt recordingoption if the duplicate episode filter feature has identified a match,where the control unit 75 sends a prompt or notification after thematch, asking the user if they would like any or all portions of theduplicate episode to be erased. Alternatively, the user may activate anautomatic preference to have the control unit 75 erase any recording ofa program that is identified as a duplicate episode by the duplicateepisode filter feature.

[0136] An active snapshot is another operational mode of the presentinvention which dumps the A/V stream from the TV encoder 360 to anotherdevice such as a PC or other output device. In this way, the activesnapshot can offload A/V segments (or entire programs or even the entirecontents of the HDD 320) to another device. This active snapshot may beaccomplished by feeding the decoded stream from the decoders 352, 356(MPEG A/V decoder and/or AC-3/MPEG Audio decoder) to the display device370 as shown in FIG. 6, for example. The output device 370 may be a PC,another HDD, CDR (recordable CD), or other digital device capable ofstoring the data.

[0137] Alternatively, the active snapshot may dump encoded or decodeddata to an external device by having the host processor 310 route datafrom the HDD 320 to the PCI bus and eventually to the external device.

[0138] As a further alternative, the active snapshot can dump analogdata to the analog output device by feeding the decoded stream from thedecoders 352, 356 (MPEG A/V decoder and/or AC-3/MPEG Audio decoder) tothe DAC 372 and TV encoder 360 which converts the digital, decodedstream to an analog signal. The analog signal is then supplied to ananalog display device 370 as shown in FIG. 6. The analog output device370 may be a conventional VCR or other analog mass storage device.

[0139] If simultaneous record and playback is desired, then control unit75 directs one of the content streams from receiver/tuner 40, 41 to thestorage device 205 by sending a control signal to bus arbitrator 55. Atthe same time, the control unit 75 can control the storage device 205 or255 to playback another program previously recorded therein which is fedfrom the storage device 205 or 255 to decoder/decrypter 65 and then tobus arbitrator 120. Further control can then be exercised by controlunit 75 which can control bus arbitrator 120 to feed the playback orrecord program to either or both display units 271, 272.

[0140] The display units 271, 272 may be separate display devices or maybe integrated in a single display device. For example, conventionalpicture-in-picture display devices can handle two simultaneous inputstreams and such a device is within the scope of this invention.

[0141] The exemplary embodiments of the present invention may also beprovided with a status indicator function which can be displayed via auser interface to the apparatus 100, such as with a remote control unitfor example. The following features may be provided: current delay,status indicator, available record time, HDD 320 capacity (Disk GasGauge), out-of-disk space alert and certain file attributes. Thesefeatures are summarized in Table 1 below. TABLE 1 Special FeaturesFeature Description Automatic record Theme recording base on programtitle, keywords or key phrases Duplicate show handling Will not recordtwo copies of the same show On-screen time display Display the currenttime into the show, ie. 0:34, 1:12 etc while in Playback, Fast- forwardor Rewind Back to pause After resume live broadcast, jump back to lastpause point Active Snapshot Dump audio/video to PC or other outputdevice Smart delete Once a show is recorded, it can be set it to neverbe deleted

[0142] The current delay feature allows the user to see how far therecording is behind a live feed when pausing the live signal. The statusindicator may be displayed on the display device 370, and indicateswhether the material a viewer is watching is LIVE (a live feed) orRECORDED. In one embodiment, the status indicator may flash LIVE orRECORDED on the output device 370. The available record time featureindicates the amount of time available for recording (in minutes, forexample).

[0143] If simultaneous playback of two programs is desired, then controlunit 75 controls the storage devices 205 and/or 255 to simultaneouslyplayback two previously recorded programs. These programs are fedthrough decoder/decrypter 65 into bus arbitrator 120. Preferably,control unit 75 would then control arbitrator 120 to switch one of theprograms to the first display unit number 271 while the other isdirected to the second display unit 272.

[0144] If the user wants to view a live broadcast while recordinganother program, then the control unit 75 operates as follows. In thisexample, it is assumed that the live program to be viewed is beingreceived by the first receiver/tuner 40. Control unit 75 then sends acontrol signal to bus arbitrator 55 to route the live broadcast programto either the bus arbitrator120 or the decoder/decrypter 65. Thisdecision is made depending on whether the live broadcast requiresdecoding and/or decryption. Depending upon which display unit isintended for viewing, the control unit 75 controls the bus arbitrator120 to route the decoded and/or decrypted content to the appropriatedisplay unit 271, 272. If no decryption or decoding is necessary, thencontrol unit 75 directs the bus arbitrator 55 to route the contentdirectly to bus arbitrator 120 which can then send the live broadcast toeither of the display units 271, 272.

[0145] A clear/convert function is another feature of the presentinvention which permits a user to convert a paused program to apermanently recorded program. For example, when the apparatus 100 isturned on, an auto pause function may be enabled that automaticallypauses (records) the currently-tuned channel. The user could then begiven the option to convert this paused program to a permanentlyrecorded program. Alternatively, a channel surfing user who pauses aprogram and who, at some point within the pause window, decides that theprogram is worth permanently recording could, for example, press anbutton on the remote control to command the apparatus 100 to permanentlyrecord the program.

[0146] As another alternative, as the duration of the pause approachesthe pause time window, the user could be prompted with a query such as“permanently record?” If yes, then the program is converted from apaused program to a permanently recorded program. In this way, the userwill not lose any of the program that may have otherwise extended beyondthe pause time window.

[0147] As yet another alternative, a channel change from channel #1 tochannel #2 converts paused channel #1 to recorded channel #1, beginspause of channel #2 and provides user with option to clear recordedchannel #1.

[0148] To convert from a paused to a recorded program, the apparatus 100may move the paused program from a portion of the HDD 320 reserved forpausing to a portion reserved for recorded programs. Alternatively, theHDD 320 directory may be updated to reallocate space such that thepaused program now resides in a virtual recorded program HDD 320 space.Such moves or HDD directory updates may be performed by the hostprocessor 310.

[0149] A personal instant replay is another feature of the presentinvention which permits a variable back tracking instant replay (up tothe length of pause). The amount to back track may correspond to theduration the remote control button is depressed. The mechanism forinstant replay may be identical to that of playback. Furthermore, aninfinite loop may be established so that the instant replay is playedagain and again until stopped by command of the user. Alternatively, theplayback may stop when a certain number of loops have been completed.

[0150] If the consumer wants to see two live broadcasts with norecording, then the control unit 75 controls bus arbitrator 55 to routeboth received content streams to either decoder/decrypter 65 or to busarbitrator 120 depending upon whether decryption and/or decoding isnecessary. Thereafter, the displays can be switched by bus arbitrator120 under the control unit 75 to the appropriate displays 271, 272.

[0151] A back to pause function is another feature of the presentinvention which may also be triggered with the remote control. The backto pause function jumps back to the paused time location. Morespecifically, after resuming a live broadcast from a paused program, theback to pause function jumps back to last pause point. In other words,the A/V stream is played back from the last pause point.

[0152] As can be seen from the above description, the FIG. 2 embodimentis highly advantageous and permits a variety of functions. For example,a user can simultaneously record at least two content streams on thestorage devices 205 or 255. In this way, the video-on-demand library canbe quite rapidly accumulated.

[0153] Furthermore, the FIG. 2 embodiment permits the simultaneousviewing of one program while another is being recorded. In this way, aconsumer can watch his television in the normal manner while stillaccumulating a video-on-demand library in the background. When the livetelevision broadcast gets boring or is no longer interesting, then theuser can switch to the video-on-demand library that has beenaccumulating during his viewing or at other times.

[0154] Furthermore, the electronic program guide 85 permits a user tonavigate the plurality of desired content, make appropriate selectionsand build the video-on-demand library that most suits his needs.

[0155]FIG. 10 further illustrates some of the methods utilized by thesecond embodiment. Generally speaking, FIG. 10 resolves schedulingconflicts between two or more programs.

[0156] More specifically, the process of FIG. 10 begins by scanning theelectronic program guide 85 for a match. This is similar to the processdescribed in relation to step 430 in FIG. 4. One difference is that step600 may scan for more than one match.

[0157] Step 610 determines if there is at least one match. If not, thenthe process loops back to step 600. If there is at least one match, thenthe flow proceeds to step 620 which determines whether there is ascheduling conflict. More specifically, step 620 determines whether therecording of one program matching the consumer's desires would overlapwith the recording of another program matching the consumer's desires.

[0158] If there is no conflict, then the flow proceeds to step 630 whichrecords the matching content. Thereafter, the file manager is updated ina manner similar to step 460 in FIG. 4 and the flow proceeds to step 670which is described below.

[0159] If there is a conflict, then step 650 performs multiple recordingof the plurality of programs matching the consumer's desires. Thisprocess is generally described above and utilizes the control unit 75 toswitch the desired content through bus arbitrator 55 to the storagedevices 205 or 255. The switching is controlled on a scheduled basisaccording to the time schedule of each program. Multiple recordingcontinues as long as there is an overlap between the schedules.

[0160] Step 660 determines whether all recording has finished. If so,then the file manager is updated in step 640 which process is describedabove.

[0161] If all recording has not been finished, then a further decisionis made in step 670 to determine whether there is one or more recordingto be completed. If so, then the process loops back to step 600 whichagain scans the electronic program guide 85 for another match. In thisway, the system can continue recording at least two programssimultaneously.

[0162] Although the above description relates to recording two programssimultaneously, the embodiment of FIG. 2 can be extended to record threeor more programs simultaneously. Essentially, the components of FIG. 2would be multiplied such that there would be N receivers/tuners and thestorage devices would be capable of recording N programs simultaneously.

[0163] As described above, the various exemplary embodiments of thepresent invention include several modes, including, but not limited torecording two or more signals where one or both may also besimultaneously viewed, recording one or more signals and playing backone or more signals, playing back two or more signals, watching one ormore signals, while recording one or more other signals, viewing two ormore live signals (through the use of picture-in-picture or othersimilar function), and viewing at least one signal live, while viewingone or more signals in playback mode. It is noted that the variousfunctions described above may be utilized in conjunction with one ormore of these modes. For example, the intelligent agent duplicatefilter, and active snapshot functions may be used with any recordingmode, the status indicator and personal instant replay features may beutilized with any playback mode, and the status indicator, clearconvert, record after watching, and personal instant replay functionsmay be utilized in any live viewing mode. The back to pause function maybe utilized to jump between any two or more live or playback signals.

[0164] Although most of the specification is directed to devices andmethods for handling video content, the invention also applies to audiocontent, data content or mixed content. In other words, the content feedmay supply audio or data content to the apparatus 100 or 110.

[0165] For example, the decoder/decrypter 60, 65 could be reconfiguredto decode and/or decrypt audio data. In addition, the MP3 standard(currently MPEG-1 Layer III), the Windows Media Audio (WMA) standard orother conventional decoding schemes as well as conventional decryptingschemes may be utilized by decoder/decrypter 60, 65 to decode and/ordecrypt the audio content. Furthermore, the display units 270, 271, 272would be speakers or other audio reproduction devices instead of videodisplay units in this alternative. Otherwise, the systems and methods ofthe invention would work in much the same manner to aggregate anaudio-on-demand library.

[0166] In at least one embodiment described above, the present inventioncontemplates the concurrent use of internal, non-removable memory andexternal, removable memory. In at least one embodiment described above,the present invention also contemplates recording content in aninternal, non-removable memory prior to recording in an external,removable memory, where the recording to the external, removable memorycan occur in a background mode. In at least one embodiment describedabove, the present invention also contemplates recording content bystreaming directly to the removable medium. In at least one embodimentdescribed above, the present invention also contemplates playing back byrecording from the external, removable memory into the internal,non-removable memory and then playing back from the internal,non-removable memory. As mentioned above, the invention may also beapplied to aggregate desired data. If data is being aggregated by thepresent invention, then the system may be labeled a personal data serverfarm. For example, a personal data server farm according to theinvention may aggregate a data-on-demand library such as a library ofdesired usenet news. The consumer could designate usenet newsgroups thatinterest that user using the user interface 90 and, perhaps anelectronic program guide 80 and the system would then aggregate alibrary of usenet news. This aggregated library of data may then bemanipulated on-demand of the user. Various other types of data may beaggregated by the invention with usenet news being only an illustrativeexample. If the invention is being applied to aggregate data content,then the decoding and/or decrypting schemes may utilize schemesappropriate to decoding and/or decrypting data. Furthermore, if the datais being broadcast according to a schedule then the scheduling andscheduling conflict resolution features described above in terms ofaudio data may be applied to such broadcast data.

[0167] Furthermore, the inventive apparatus 100,110 may be embodied in avariety of ways. A set-top box is one example. Other examples include apersonal computer (PC), TV or hardware card that is added to an existingapparatus such as a conventional set-top box, PC or TV. Still further,the inventive functionality may be downloaded or otherwise programmedinto a set-top box, PC or TV. Such programming may be accompanied byconnecting the programmed device to a storage device such as hard discdrive array 200. Furthermore, although FIGS. 1 and 2 illustrateelectronic program guides 80,85 as part of the apparatus 100,110, theelectronic program guide content could also be provided by the contentfeed 10.

[0168] It is noted that the functional blocks in FIGS. 1-2 and 6-9 maybe implemented in hardware and/or software. The hardware/softwareimplementations may include a combination of processor(s) and article(s)of manufacture. The article(s) of manufacture may further includestorage media and executable computer program(s). The executablecomputer program(s) may include the instructions to perform thedescribed operations. The computer executable program(s) may also beprovided as part of externally supplied propagated signal(s) either withor without carrier wave(s).

[0169] The invention being thus described, it will be obvious that thesame may be varied in many ways. Such variations are not to be regardedas departure from the spirit and scope of the invention, and all suchmodifications as would be obvious to one skilled in the art are intendedto be included within the scope of the following claims.

What is claimed is:
 1. A method of processing available content,comprising: receiving the available content using a single tuner; andperforming at least one of a plurality of operations on the availablecontent received from the single tuner.
 2. The method of claim 1 ,wherein said performing step includes selecting at least one recordedevent from the available content, based on actor, actress, director,program title, key word, key phrase, tag information, synopsis, releasedate, critical review, related program, sequel, thumbnail, preview, orsnippet.
 3. The method of claim 2 , wherein said selecting is initiatedvia remote control.
 4. The method of claim 2 , wherein said selecting isachieved by a user browsing through information related to the availablecontent stored on at least one storage medium.
 5. The method of claim 1, wherein said performing step includes alerting a user to an attempt torecord a program from the available content that has already beenrecorded on at least one storage medium.
 6. The method of claim 1 ,wherein said performing step includes tracking a list of recordedprograms on the at least one storage medium for duplicates when a recordoperation is initiated.
 7. The method of claim 6 , wherein saidperforming step includes outputting a notification to a user if aduplicate exists.
 8. The method of claim 7 , wherein a duplicate existsif tag information matches.
 9. The method of claim 6 , wherein saidperforming step includes displaying characteristics of the selectedprogram to record with a best match in the at least one storage mediumfor comparison by the user.
 10. The method of claim 6 , wherein saidperforming step includes prompting the user with a notification and theoption to view the possible match to confirm that the user is about torecord a duplicate.
 11. The method of claim 6 , wherein said performingstep includes sending a notification after the match, asking the user ifany or all portions of the duplicate episode should be erased.
 12. Themethod of claim 6 , wherein said performing step includes activating anautomatic preference to erase any recording of a program that isidentified as a duplicate.
 13. The method of claim 1 , wherein saidperforming step includes displaying a status of a program from theavailable content the user is watching.
 14. The method of claim 13 ,wherein the status may include a current delay, a status indicator,available record time, medium capacity, out-of-space alert, orattributes.
 15. The method of claim 14 , wherein the current delayallows the user to see how far the recording is behind a live feed whenpausing the live signal.
 16. The method of claim 14 , wherein the statusindicator indicates whether the content a user is watching is live orrecorded.
 17. The method of claim 14 , wherein available record timeindicates an amount of time available for recording.
 18. The method ofclaim 1 , wherein said performing step includes clearing pausedprogramming from the available content or converting paused programmingto recorded programming during a channel change.
 19. The method of claim18 , wherein said performing step includes prompting a user near an endof a pause time window whether permanent recording is desired.
 20. Themethod of claim 19 , wherein paused programming and permanentprogramming is stored in different portions of at least one storagemedium.
 21. The method of claim 20 , wherein a portion of the at leastone storage medium reserved for paused programming is variable.
 22. Themethod of claim 1 , wherein said performing step includes allowing auser to record an entire program from the available content afterviewing the program for a period of time.
 23. The method of claim 1 ,wherein said performing step includes permitting a user to capture asnippet of digital audio/video from the available content.
 24. Themethod of claim 23 , wherein the snippet is saved to an external device.25. The method of claim 24 , wherein the external device is a computer,high-density disk, or CDR.
 26. The method of claim 23 , wherein thedigital audio/video from the available content is decoded.
 27. Themethod of claim 23 , wherein the digital audio/video from the availablecontent is encoded.
 28. The method of claim 23 , wherein the digitalaudio/video is analog data.
 29. The method of claim 28 , wherein theexternal device is a VCR or other analog mass storage device.
 30. Themethod of claim 1 , wherein said performing step includes permitting auser to rewind recording in an increment for playback of a portion ofthe available content.
 31. The method of claim 30 , wherein theincrement corresponds to a duration a remote control button isdepressed.
 32. The method of claim 30 , wherein a loop may beestablished so that the instant replay is played repeatedly untilstopped by a user.
 33. The method of claim 30 , wherein a loop may beestablished so that the instant replay is played repeatedly until acertain number of loops have been completed.
 34. The method of claim 1 ,wherein said performing step includes enabling a user to jump back froma live broadcast to a last paused video segment.
 35. The method of claim34 , wherein the jump back is triggered by a remote control.
 36. Themethod of claim 34 , wherein after resuming a live broadcast from apaused program, the jump back is back to a last paused point.
 37. Themethod of claim 36 , wherein after the jump back, the paused program isplayed back from the last pause point.
 38. The method of claim 1 ,further comprising: creating a personalized database from the availablecontent.
 39. The method of claim 38 , said creating step including:receiving an electronic program guide with available content; receivingpreferences indicating potentially desired content; scanning theelectronic program guide for the potentially desired content; recordingthe potentially desired content located by said scanning; aggregating alibrary of potentially desired content by iterating said scanning andrecording steps; creating a database, which catalogs the potentiallydesired content; selecting content from the database and permittingon-demand viewing of the selected content from the library ofpotentially desired content by a user.
 40. The method of claim 39 ,further comprising: determining a schedule of the potentially desiredcontent; and resolving conflicts in the schedule; said recording steprecording the potentially desired content according to the resolvedschedule.
 41. The method of claim 39 , further comprising: permitting auser to edit the library of potentially desired content.
 42. The methodof claim 39 , further comprising: permitting a user to organize thelibrary of potentially desired content.
 43. The method of claim 39 ,further comprising: permitting a user to add at least one comment to atleast one portion of the library of potentially desired content.
 44. Themethod of claim 39 , further comprising: waiting until the potentiallydesired content is about to be broadcast, said recording stepsynchronizing the recording according to said waiting step.
 45. Themethod of claim 39 , said inputting including inputting criteriaindicating one or more potentially desired content.
 46. The method ofclaim 39 , said inputting including determining potentially desiredcontent selections based on previously selected content.
 47. The methodof claim 39 , wherein said recording step is performed on at least onestorage medium.
 48. The method of claim 47 , wherein the at least onestorage medium is reconfigurable.
 49. The method of claim 47 , furthercomprising synchronizing access of the at least one storage medium toavoid periods of inaccessibility.
 50. The method of claim 47 furthercomprising, providing a synch pulse to confirm availability of the atleast one storage medium.
 51. The method of claim 47 , wherein the atleast one storage medium is expandable.
 52. The method of claim 47 ,wherein at least one storage medium is automatically loaded.
 53. Themethod of claim 47 , wherein the potentially desired content includes afirst content and a second content, said method further comprising:simultaneously recording the first content and the second content. 54.The method of claim 47 , wherein the potentially desired contentincludes a first content, a second content and a third content, saidmethod further comprising: determining whether the recording of thefirst content has been completed; simultaneously recording the secondand the third content.
 55. The method of claim 47 , wherein thepotentially desired content includes a first content and a secondcontent, said method further comprising: performing on demand play backof the first and/or second content simultaneous with the recording ofthe first and/or second content; and performing on demand play back ofthe second and/or third content simultaneous with the recording of thesecond and/or third content.
 56. An apparatus for processing availablecontent, comprising: a single tuner for receiving the available content;and a control unit for performing at least one of a plurality ofoperations on the available content received from the a single tuner.57. The apparatus of claim 56 , wherein said control unit permitsselection of at least one recorded event from the available content,based on actor, actress, director, program title, key word, key phrase,tag information, synopsis, release date, critical review, relatedprogram, sequel, thumbnail, preview, or snippet.
 58. The apparatus ofclaim 57 , wherein said selection is initiated via remote control. 59.The apparatus of claim 57 , wherein said selection is achieved by a userbrowsing through information related to the available content stored onat least one storage medium.
 60. The method of claim 57 , wherein saidcontrol unit alerts a user to an attempt to record a program from theavailable content that has already been recorded on at least one storagemedium.
 61. The apparatus of claim 56 , wherein said control unit tracksa list of recorded programs on the at least one storage medium forduplicates when a record operation is initiated.
 62. The apparatus ofclaim 61 , wherein said control unit outputs a notification to a user ifa duplicate exists.
 63. The apparatus of claim 62 , wherein a duplicateexists if tag information matches.
 64. The apparatus of claim 61 ,wherein said control unit displays characteristics of the selectedprogram to record with a best match in the at least one storage mediumfor comparison by the user.
 65. The apparatus of claim 61 , wherein saidcontrol unit prompts the user with a notification and the option to viewthe possible match to confirm that the user is about to record aduplicate.
 66. The apparatus of claim 61 , wherein said control unitsends a notification after the match, asking the user if any or allportions of the duplicate episode should be erased.
 67. The apparatus ofclaim 61 , wherein said control unit activates an automatic preferenceto erase any recording of a program that is identified as a duplicate.68. The apparatus of claim 56 , wherein said control unit displays astatus of a program from the available content the user is watching. 69.The apparatus of claim 68 , wherein the status may include a currentdelay, a status indicator, available record time, medium capacity,out-of-space alert, or attributes.
 70. The apparatus of claim 69 ,wherein the current delay allows the user to see how far the recordingis behind a live feed when pausing the live signal.
 71. The apparatus ofclaim 69 , wherein the status indicator indicates whether the content auser is watching is live or recorded.
 72. The apparatus of claim 69 ,wherein available record time indicates an amount of time available forrecording.
 73. The apparatus of claim 56 , wherein said control unitclears paused programming from the available content or converts pausedprogramming to recorded programming during a channel change.
 74. Theapparatus of claim 73 , wherein said control unit prompts a user near anend of a pause time window whether permanent recording is desired. 75.The apparatus of claim 74 , wherein paused programming and permanentprogramming is stored in different portions of at least one storagemedium.
 76. The apparatus of claim 75 , wherein a portion of the atleast one storage medium reserved for paused programming is variable.77. The apparatus of claim 56 , wherein said control unit allows a userto record an entire program from the available content after viewing theprogram for a period of time.
 78. The apparatus of claim 56 , whereinsaid control unit permits a user to capture a snippet of digitalaudio/video from the available content.
 79. The apparatus of claim 78 ,wherein the snippet is saved to an external device.
 80. The apparatus ofclaim 79 , wherein the external device is a computer, high-density disk,or CDR.
 81. The apparatus of claim 78 , wherein the digital audio/videofrom the available content is decoded.
 82. The apparatus of claim 78 ,wherein the digital audio/video from the available content is encoded.83. The apparatus of claim 78 , wherein the digital audio/video isanalog data.
 84. The apparatus of claim 83 , wherein the external deviceis a VCR or other analog mass storage device.
 85. The apparatus of claim56 , wherein said control unit permits a user to rewind recording in anincrement for playback of a portion of the available content.
 86. Theapparatus of claim 85 , wherein the increment corresponds to a durationa remote control button is depressed.
 87. The apparatus of claim 85 ,wherein a loop may be established so that the instant replay is playedrepeatedly until stopped by a user.
 88. The apparatus of claim 85 ,wherein a loop may be established so that the instant replay is playedrepeatedly until a certain number of loops have been completed.
 89. Theapparatus of claim 56 , wherein said control unit enables a user to jumpback from a live broadcast to a last paused video segment.
 90. Theapparatus of claim 89 , wherein the jump back is triggered by a remotecontrol. The back to pause function jumps back to the paused timelocation.
 91. The apparatus of claim 89 , wherein after resuming a livebroadcast from a paused program, the jump back is back to a last pausedpoint.
 92. The apparatus of claim 91 , wherein after the jump back, thepaused program is played back from the last pause point.
 93. Theapparatus of claim 56 , wherein said control unit creates a personalizeddatabase from the available content.
 94. The apparatus of claim 93 ,further comprising: a receiving device operatively connected to acontent feed; at least one storage medium operatively connected to saidreceiving device; said receiving device receiving an electronic programguide, said electronic program guide indicating a plurality of availablecontent to be broadcast to said receiving device via the content feed;said control unit operatively connected to said at least one storagemedium; said control unit determining potentially desired content byscanning the electronic program guide for content matching userpreferences; said control unit controlling said at least one storagemedium to record the potentially desired content to create an on-demandvideo library; said control unit creating a database which catalogs thepotentially desired content; a user input device operatively connectedto said control unit, said user input device permitting a user tointeract with the database and enter play-back commands, said controlunit playing back one or more of the recorded content from said at leastone storage medium on demand from the user in response to the play-backcommands from said user input device.
 95. The apparatus of claim 94 ,further comprising: a display device operatively connected to said atleast one storage medium, said display device receiving the played-backcontent from said at least one storage medium and displaying theplayed-back content.
 96. The apparatus of claim 94 , said receivingdevice and said control unit being provided in a unit, said at least onestorage medium external to the unit and operatively connected to theunit.
 97. The apparatus of claim 94 , wherein said at least one storagemedium is expandable so as to accommodate a larger video library. 98.The apparatus of claim 94 , said at least one storage medium including aplurality of modular storage devices operatively connectable to saidreceiving device.
 99. The apparatus of claim 94 , wherein the contentfeed supplies content in an encrypted form and said at least one storagemedium stores the desired content in the encrypted form, the apparatusfurther comprising: a decryption unit operatively connected to said atleast one storage medium, said decryption unit decrypting the desiredcontent supplied from said storage device.
 100. The apparatus of claim94 , wherein the content feed supplies content in an encrypted form andsaid at least one storage medium stores the desired content in theencrypted form, the apparatus further comprising: a switching deviceoperatively connected to said receiving device, said at least onestorage medium and said control unit; a decryption unit operativelyconnected to said switching device and to said at least one storagemedium, said decryption unit decrypting the desired programs suppliedfrom said at least one storage medium; wherein said control devicecontrols said switching device to route the encrypted content to eithersaid at least one storage medium or to said decryption unit.
 101. Theapparatus of claim 100 , said electronic program guide including a portthat receives program guide information.
 102. The apparatus of claim 94, wherein the at least one storage medium is reconfigurable.
 103. Theapparatus of claim 94 , wherein said control unit synchronizes access ofthe at least one storage medium to avoid periods of inaccessibility.104. The apparatus of claim 94 , said system, providing a synch pulse toconfirm availability of the at least one storage medium.
 105. Theapparatus of claim 94 , wherein the at least one storage medium isexpandable.
 106. The apparatus of claim 94 , wherein the at least onestorage medium is automatically loaded.
 107. The apparatus of claim 94 ,wherein the potentially desired content includes a first content and asecond content, and said system simultaneously records the first contentand the second content.
 108. The apparatus of claim 94 , wherein thepotentially desired content includes a first content, a second contentand a third content, and said system determines whether the recording ofthe first content has been completed, and simultaneously records thesecond and the third content.
 109. The apparatus of claim 94 , whereinthe potentially desired content includes a first content and a secondcontent, and said system performs on demand play back of the firstand/or second content simultaneous with the recording of the firstand/or second content; and performs on demand play back of the secondand/or third content simultaneous with the recording of the secondand/or third content.